<?php

namespace App\Models;

use Illuminate\Auth\Authenticatable;
use Tymon\JWTAuth\Contracts\JWTSubject;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Contracts\Auth\Authenticatable as AuthenticatableContract;

class XoAnchors extends BaseModel implements AuthenticatableContract, JWTSubject
{
    // 软删除和用户验证attempt
    use SoftDeletes, Authenticatable;

	protected $table = 'xo_anchors';


    public function posts()
    {
        return $this->hasMany(Post::class);
    }

    public function comments()
    {
        return $this->hasMany(Comment::class);
    }

    // jwt 需要实现的方法
    public function getJWTIdentifier()
    {
        return $this->getKey();
    }

    // jwt 需要实现的方法, 一些自定义的参数
    public function getJWTCustomClaims()
    {
        return [];
    }
	
	// public function getAuthPassword() {
	//  //这样数据库字段为 passwords 也是可以认证的。
	//   return $this->password;
	// }
    
    //修改时 更改储存格式或者值 【自动触发，无需调用】
    public function setAttributeVal($key, $value)
    {
        //$value 代表字段的值
        $this->attributes[$key] = $value;
    }
    
}
